home *** CD-ROM | disk | FTP | other *** search
- /*
- * Copyright (c) 1987 University of Maryland Department of Computer Science.
- * All rights reserved. Permission to copy for any purpose is hereby granted
- * so long as this copyright notice remains intact.
- */
-
- /*
- * GF classification codes
- */
-
- /*
- * Predicate for simple paint commands. This is presumably the most
- * common GF operation; it may be profitable to check for this before
- * switching out on the command type.
- */
- #define GF_IsPaint(c) ((c) < 64)
-
- /*
- * Symbolic names for command `types', as returned by the macro
- * GT_TYPE(int c).
- */
- #define GT_PAINT0 0 /* paint without parameter */
- #define GT_PAINT 1 /* paint with parameter */
- #define GT_BOC 2 /* long BOC */
- #define GT_BOC1 3 /* short BOC */
- #define GT_EOC 4 /* EOC */
- #define GT_SKIP0 5 /* parameterless SKIP */
- #define GT_SKIP 6 /* parmeterised SKIP */
- #define GT_NEW_ROW 7 /* NEW_ROW_n */
- #define GT_XXX 8 /* XXXn */
- #define GT_YYY 9 /* YYY */
- #define GT_NOP 10 /* no op */
- #define GT_CHAR_LOC 11 /* CHAR_LOC */
- #define GT_CHAR_LOC0 12 /* abbreviated CHAR_LOC */
- #define GT_PRE 13
- #define GT_POST 14
- #define GT_POSTPOST 15
- #define GT_UNDEF 16
-
- /*
- * Symbolic names for parameter lengths, obtained via the macro
- * GT_OpLen(int c).
- */
- #define GPL_NONE 0 /* no parameter, or too complex */
- #define GPL_UNS1 1 /* one one-byte parameter in 0..255 */
- #define GPL_UNS2 2 /* one two-byte parameter in 0..65535 */
- #define GPL_UNS3 3 /* one three-byte parameter in 0..16777215 */
- #define GPL_SGN4 4 /* one four-byte signed parameter */
- /*
- * there are no unsigned four byte parameters, and no shorter signed
- * parameters
- */
-
- #define GF_OpLen(code) (gf_oplen[code])
- #define GF_TYPE(code) (gf_gt[code])
- extern char gf_oplen[];
- extern char gf_gt[];
-